命令行大全 & docker、containerd、ctr、crictl 的联系
关注公众号并添加到“星标⭐”,防止错过消息
后台回复【资料包】获取学习资料
docker 和 containerd
1、docker 由 docker-client ,dockerd,containerd,docker-shim,runc 组成,所以 containerd 是 docker 的基础组件之一
2、从 k8s 的角度看,可以选择 containerd 或 docker 作为运行时组件:其中 containerd 调用链更短,组件更少,更稳定,占用节点资源更少。所以 k8s 后来的版本开始默认使用 containerd 。
3、containerd 相比于 docker , 多了 namespace 概念,每个 image 和 container 都会在各自的 namespace 下可见。
4、docker 作为 k8s 容器运行时,调用关系为:kubelet --> dockershim (在 kubelet 进程中) --> dockerd --> containerd
containerd 作为 k8s 容器运行时,调用关系为:kubelet --> cri plugin(在 containerd 进程中) --> containerd
命令区分
ctr
是 containerd 的一个客户端工具。crictl
是 CRI 兼容的容器运行时命令行接口,可以使用它来检查和调试 k8s 节点上的容器运行时和应用程序。ctr -v
输出的是 containerd 的版本,crictl -v
输出的是当前 k8s 的版本,从结果显而易见你可以认为 crictl 是用于 k8s 的。
# ctr -v
ctr github.com/containerd/containerd v1.4.11
# crictl -v
crictl version v1.21.0-k3s1
一般来说某个主机安装了 k8s 后,命令行才会有 crictl 命令。而 ctr 是跟 k8s 无关的,主机安装了 containerd 服务后就可以操作 ctr 命令。
常用命令
命令 | docker | ctr(containerd) | crictl(kubernetes) |
---|---|---|---|
命令 | docker | ctr(containerd) | crictl(kubernetes) |
查看运行的容器 | docker ps | ctr task ls/ctr container ls | crictl ps |
查看镜像 | docker images | ctr image ls | crictl images |
查看容器日志 | docker logs | 无 | crictl logs |
查看容器数据信息 | docker inspect | ctr container info | crictl inspect |
查看容器资源 | docker stats | 无 | crictl stats |
启动/关闭已有的容器 | docker start/stop | ctr task start/kill | crictl start/stop |
运行一个新的容器 | docker run | ctr run | 无(最小单元为 pod) |
修改镜像标签 | docker tag | ctr image tag | 无 |
创建一个新的容器 | docker create | ctr container create | crictl create |
导入镜像 | docker load | ctr image import | 无 |
导出镜像 | docker save | ctr image export | 无 |
删除容器 | docker rm | ctr container rm | crictl rm |
删除镜像 | docker rmi | ctr image rm | crictl rmi |
拉取镜像 | docker pull | ctr image pull | ctictl pull |
推送镜像 | docker push | ctr image push | 无 |
在容器内部执行命令 | docker exec | 无 | crictl exec |
更多命令操作,可以直接在命令行输入命令查看帮助。
作者:catoop
原文:https://blog.csdn.net/catoop/article/details/121240958
- END -
推荐阅读
还怕记不住 Kubectl 命令?K9s 太强大了关于 Kubernetes,没人愿意说的真相
ArgoCD Web UI 加载很慢?一招教你解决
Devtron:强大的 K8S DevOPS平台 Kubernetes 中 暴露服务 的新方法
将 Docker 镜像安全扫描,添加到 CI/CD 管道
GitHub 语言类趋势真是日新月异!
40 张图解 K8s 中微服务项目设计与实现
总结了 800多个 Kubectl 别名,再也不怕记不住命令了!
Grafana 9 正式发布,更易用,更酷炫了!
Istio、eBPF 和 RSocket Broker:10 张图轻松搞懂服务网格
专为开发人员构建的个人知识管理工具 - Dendron
CKS CKA CKAD 考试迎来重大变化
免费的 Docker 镜像仓库,无需注册登录!!
8.2K Star !美观强大 Nginx 可视化管理界面Istio 已经远超越 SpringCloud、dubbo 框架Argo CD 2.4 已发布,带来重大变化!!